package com.ruoyi.order.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 【请填写功能名称】对象 mes_order
 * 
 * @author ruoyi
 * @date 2025-01-14
 */
public class MesOrder extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 标识 */
    private Long id;

    /** 客户名称 */
    @Excel(name = "委托单号")
    private String orderNo;

    /** 客户名称 */
    @Excel(name = "客户名称")
    private String customerName;

    /** 客户地址 */
    @Excel(name = "客户地址")
    private String location;

    /** 客户委托日期 */
    @Excel(name = "客户委托日期")
    private String serviceDate;

    /** 产品名称 */
    @Excel(name = "产品名称")
    private String productName;

    /** 产品型号 */
    @Excel(name = "产品型号")
    private String model;

    /** 外部产品型号 */
    @Excel(name = "外部产品型号")
    private String outModel;

    /** 产品数量 */
    @Excel(name = "产品数量")
    private Long quantity;

    /** 占用托盘编号，多个用，号分割 */
    @Excel(name = "占用托盘编号")
    private String palletCode;

    /** 占用库位，多个用，号分割 */
    @Excel(name = "占用库位编号")
    private String positionCode;
    /** 占用库位，页面选择的数组 */
    @Excel(name = "占用库位编号")
    private String[] positionCodes;

    /**
     * 状态 见字典表 mes_order_status
     * */
    @Excel(name = "状态")
    private String status;
    /** 进场时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "进场时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date enterTime;

    /** 计划出场时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划出场时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expectExitTime;

    /** 创建人 */
    @Excel(name = "创建人")
    private String creator;

    /** 更新人 */
    @Excel(name = "更新人")
    private String updater;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建时间")
    private Date createTime;


    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "更新时间")
    private Date updateTime;



    /** 是否删除 */
    @Excel(name = "是否删除")
    private Integer deleted;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setCustomerName(String customerName) 
    {
        this.customerName = customerName;
    }

    public String getCustomerName() 
    {
        return customerName;
    }
    public void setProductName(String productName) 
    {
        this.productName = productName;
    }

    public String getProductName() 
    {
        return productName;
    }
    public void setModel(String model) 
    {
        this.model = model;
    }

    public String getModel() 
    {
        return model;
    }
    public void setQuantity(Long quantity) 
    {
        this.quantity = quantity;
    }

    public Long getQuantity() 
    {
        return quantity;
    }
    public void setEnterTime(Date enterTime) 
    {
        this.enterTime = enterTime;
    }

    public String getPalletCode() {
        return palletCode;
    }

    public void setPalletCode(String palletCode) {
        this.palletCode = palletCode;
    }

    public String getPositionCode() {
        return positionCode;
    }

    public String[] getPositionCodes() {
        return positionCodes;
    }

    public void setPositionCodes(String[] positionCodes) {
        this.positionCodes = positionCodes;
    }

    public void setPositionCode(String positionCode) {
        this.positionCode = positionCode;
    }

    public Date getEnterTime()
    {
        return enterTime;
    }
    public void setExpectExitTime(Date expectExitTime) 
    {
        this.expectExitTime = expectExitTime;
    }

    public Date getExpectExitTime() 
    {
        return expectExitTime;
    }
    public void setCreator(String creator) 
    {
        this.creator = creator;
    }

    public String getCreator() 
    {
        return creator;
    }
    public void setUpdater(String updater) 
    {
        this.updater = updater;
    }

    public String getUpdater() 
    {
        return updater;
    }
    public void setDeleted(Integer deleted) 
    {
        this.deleted = deleted;
    }

    public Integer getDeleted() 
    {
        return deleted;
    }

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public String getLocation() {
        return location;
    }

    public void setLocation(String location) {
        this.location = location;
    }

    public String getServiceDate() {
        return serviceDate;
    }

    public void setServiceDate(String serviceDate) {
        this.serviceDate = serviceDate;
    }

    public String getOutModel() {
        return outModel;
    }

    public void setOutModel(String outModel) {
        this.outModel = outModel;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    @Override
    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    @Override
    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("customerName", getCustomerName())
            .append("productName", getProductName())
            .append("model", getModel())
            .append("quantity", getQuantity())
            .append("enterTime", getEnterTime())
            .append("expectExitTime", getExpectExitTime())
            .append("creator", getCreator())
            .append("createTime", getCreateTime())
            .append("updater", getUpdater())
            .append("updateTime", getUpdateTime())
            .append("deleted", getDeleted())
            .toString();
    }
}
